-
Notifications
You must be signed in to change notification settings - Fork 533
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
API O enumification #662
API O enumification #662
Conversation
It actually depends on dotnet/java-interop#164 i.e. I don't care about [Interface] in methodmap.csv anymore. |
82f6dae
to
8631954
Compare
It is ready to be merged (with the required java.interop changes). |
390dd77
to
3da80d8
Compare
What are the required Java.Interop changes? Is it support for static properties on interfaces? |
Please rebase atop commit db668ba or later, as that has some attempted fixes (or just checks!) around
|
Additionally, we need to investigate the ABI breakage. |
Trying to build this PR locally, and (oddly) it doesn't build:
That aside, the previously mentioned ABI breakage is still in effect: public virtual unsafe Java.Lang.Object FindViewById (int id) while API-25 contains: public virtual unsafe Android.Views.View FindViewById (int id) Changing <T extends View> public T findViewById(int id); |
The referenced PR has been merged. |
You are supposed to fix your api-merge issue first. |
Marking as do-not-merge as api-merge needs to be fixed first. |
4542667
to
b98ad55
Compare
Now there is nothing that blocks merging this. No fixes in api-merge or anything else, it is not worth. Just two lines in metadata does the required work. |
d3adeb5
to
0a0aa95
Compare
Please append |
Since the commit messages can be gone after force updates, I'm copypasting the original text here. Here is the list of the reported breaking changes:
Google changed the value!
The bare parameter name changes that we already resolved as "renaming to the new name is the way what we do". api-diff most likely needs fix to not report this kind of changes.
It is actually a bugfix: https://bugzilla.xamarin.com/show_bug.cgi?id=55473
It is also a bugfix for https://bugzilla.xamarin.com/show_bug.cgi?id=51293
They are all parameter name fixes in Android API.
Google changed the constant value here too. Well, it should.
This is a bogus report. It sure adds another interface but it does not bring in any breaking change because the derived interface XmlResourceParser also contains the only member in AutoCloseable i.e. close() ! api-check must not report this as a breaking change. This applies to all other interfaces that report the same error too.
Why is this happening? Because they are static methods that should not be part of the interface member. Why does this happen? Because this fix is not merged! dotnet/java-interop#159 That fix really needs to be merged otherwise we keep generating these API incomatibility forever. The issue on java.time.chrono API mentioned there is actually due to totally different issue from the static <-> instance changes, so there is no excuse to not fix the static issue.
Fixed: see src/Mono.Android/Java.Lang/StringBuffer.cs and src/Mono.Android/Java.Lang/StringBuilder.cs for details.
They must be brought be intrusive Google API changes due to the step-by-step migration from Harmony to OpenJDK. There are no members that used those consts and should be simply killed even without changes. We can take bugs IF ANYONE EVER used it. I don't waste my time on "fixing" this.
They are all api-merge bug: why does api-merge preserve this method as a default interface method?? It had been non-default in earlier API Levels, therefore api-merge must generate this method as non-default.
This is new in java.lang.reflect.GenericDeclaration interface and should also be part of huge Harmony - OpenJDK migration. And unlike other new additional interfaces, those methods in AnnotatedElement are not default, so they are indeed breaking changes. At this state, I don't think there is anything we can help the situation. We cannot remove this base interface type because that will generate JCW that doesn't compile. The only idea I can think of is to completely kill this type. It's just like we give up EntityIterator.
This was actually newly introduced breakage for OpenJDK migration too. FileChannel now implements SeekableByteChannel, which never existed, and they require those methods to return ISeekableByteChannel in C#, not FileChannel whereas FileChannel is ISeekableByteChannel. So they are changed in the metadata fixup, but then this breakage. Now Position() and Truncate() are added as explicit interface implementation. However, what can we do for TruncateAsync() ? NOTHING! It is (semi-)automatically generated by
This should not be reported because all those interface methods are default!
I explicitly removed this. It had been marked as [Obsolete]. |
9e6be77
to
bb12445
Compare
build |
Context: dotnet/android#662 The intention of [xamarin-android][xa]'s [api-compatibility][compat] test is to ensure that API compatibility isn't broken by a commit. The `api-compatibility` test works by using the `make check` target in this repo (`xamarin-android-api-compatibility`). Unfortunately, it's broken: API breakage which *should* be reported *isn't* being reported. The cause of the failure is the intermix of three things: 1. The `make check` target redirects `mono-api-info` standard output to a file, a file which *must* be valid XML in order for the subsequent `mono-api-html` invocation to succeed 2. When `mono-api-info` [encounters an error loading an assembly][assembly-error], the error message is written to standard output. 3. For currently unknown reasons, the xamarin-android build system doesn't always copy debug symbols when it copies assemblies. The result of this interplay is that when processing `Mono.Android.dll`, the resulting `Mono.Android.xml` file is not valid XML: Symbol file …/xamarin-android/bin/BuildDebug/Xamarin.Android.Cecil.pdb doesn't match image …/xamarin-android/bin/BuildDebug/Xamarin.Android.Cecil.dll <?xml version="1.0" encoding="utf-8"?> … (I don't immediately know why `Xamarin.Android.Cecil.dll` is being loaded while processing `Mono.Android.dll`. I just know that the resulting intermediate `Mono.Android.xml` for API compatibility checking starts with the above output.) While all three factors can -- and should! -- be individually fixed, it's easiest at this point in time to fix the first factor: instead of redirecting `mono-api-info` standard output to `Mono.Android.xml`, instead use `mono-api-info -o FILENAME`. This ensures that the resulting file that we care about will contain valid XML. [xa]: https://github.com/xamarin/xamarin-android [compat]: https://github.com/xamarin/xamarin-android/tree/master/tests/api-compatibility [assembly-error]: https://github.com/mono/mono/blob/a715c0daee65db97e2df1080ef42dc99436a3f52/mcs/tools/corcompare/mono-api-info.cs#L205
Context: #662 The intention of `xamarin-android`'s [api-compatibility](tests/api-compatibility) test is to ensure that API compatibility isn't broken by a commit. The `api-compatibility` test works by using the `make check` target in the [`xamarin-android-api-compatibility` repo][xa-compat]. Unfortunately, it was broken: API breakage which *should* be reported *isn't* being reported. The cause of the failure was the intermix of three things: 1. The `make check` target redirects `mono-api-info` standard output to a file, a file which *must* be valid XML in order for the subsequent `mono-api-html` invocation to succeed 2. When `mono-api-info` [encounters an error loading an assembly][assembly-error], the error message is written to standard output. 3. For currently unknown reasons, the xamarin-android build system doesn't always copy debug symbols when it copies assemblies. The result of this interplay is that when processing `Mono.Android.dll`, the resulting `Mono.Android.xml` file is not valid XML: Symbol file …/xamarin-android/bin/BuildDebug/Xamarin.Android.Cecil.pdb doesn't match image …/xamarin-android/bin/BuildDebug/Xamarin.Android.Cecil.dll <?xml version="1.0" encoding="utf-8"?> … (I don't immediately know why `Xamarin.Android.Cecil.dll` is being loaded while processing `Mono.Android.dll`. I just know that the resulting intermediate `Mono.Android.xml` for API compatibility checking starts with the above output.) While all three factors can -- and should! -- be individually fixed, it's easiest at this point in time to fix the first factor: instead of redirecting `mono-api-info` standard output to `Mono.Android.xml`, instead use `mono-api-info -o FILENAME`. This ensures that the resulting file that we care about will contain valid XML. Bump to xamarin-android-api-compatibility/master/0e1889b0 so that the `mono-api-info` invocation uses `mono-api-info -o FILENAME`. [xa-compat]: https://github.com/xamarin/xamarin-android-api-compatibility [assembly-error]: https://github.com/mono/mono/blob/a715c0daee65db97e2df1080ef42dc99436a3f52/mcs/tools/corcompare/mono-api-info.cs#L205
bb12445
to
efd6bf3
Compare
xamarin/xamarin-android-api-compatibility#2 blocks too. |
I am tired of seeing those pointless "data-is-non-breaking" reports. Why are they reported at all? |
If any insignificant lines still matter in this build step, why don't we dump the entire MSBuild log files from our msbuild tests? No you don't want to see them. I don't want to open useless logs every time I have to work on this stuff either, so let's not do this. |
Since the original reports at #662 (comment) is too long to read, especially now that we've got tons of "fixes", here is the updated list of the reported breaking changes:
Google changed the value!
It is actually a bugfix: https://bugzilla.xamarin.com/show_bug.cgi?id=55473
It is also a bugfix for https://bugzilla.xamarin.com/show_bug.cgi?id=51293
Google changed the constant value here too. Well, it should.
They must be brought be intrusive Google API changes due to the step-by-step migration from Harmony to OpenJDK. There are no members that used those consts and should be simply killed even without changes. We can take bugs IF ANYONE EVER used it. I don't waste my time on "fixing" this. I found two additional warnings.
(Why such an overlook happened? I was grepping "data-is-breaking" items but those lines were not marked with that specific attribute! This time they were uncovered because I could read the entire API diff report after all insignificant nonbreaking changes went away.) Those are OpenJDK changes that we have no control over. |
…tion branch See dotnet/android#662 for all those details. Particularly dotnet/android#662 (comment) for the latest details.
04f545d
to
d3f8957
Compare
…tion branch See dotnet/android#662 for all those details. Particularly dotnet/android#662 (comment) for the latest details.
…tion branch See dotnet/android#662 for all those details. Particularly dotnet/android#662 (comment) for the latest details.
…tion branch See dotnet/android#662 for all those details. Particularly dotnet/android#662 (comment) for the latest details.
Context: dotnet/android#662 There are three breaking changes in this update which we consider to be acceptable: 1. Removal of `Android.Service.Quicksettings.TileState` 2. Removal of `Java.Lang.Reflect.Constructor.InterfaceConsts` 3. Removal of `Java.Lang.Reflect.Method.InterfaceConsts` The `TileState` enum (1) is present due to a type-o: the namespace is *supposed* to be `Android.Service.QuickSettings` (note the capital-`S` in `QuickSettings`), and there is also an identical `Android.Service.QuickSettings.TileState` enum type. The incorrect `Android.Service.Quicksettings.TileState` type has been `[Obsolete]` for quite some time, so we're removing it now. The `InterfaceConsts` types (2, 3) are for `static final int` members from a Java interface. (In this case, `Constructor` and `Method` are *classes*, so the `InterfaceConsts` types were coming from interfaces those types implement.) Related: https://developer.xamarin.com/guides/android/advanced_topics/api_design/ > All classes that implement a Java interface containing constants > get a new nested `InterfaceConsts` type which contains constants > from all implemented interfaces. However, the `InterfaceConsts` types are only emitted on types which implement the interface. In API-25, we had: // Java interface Member { public static final int DECLARED = 1; public static final int PUBLIC = 0; // ... } class Constructor extends AccessibleObject implements Member { // ... } This resulted in the C# binding: // C# partial class Constructor : AccessibleObject, IMember { public static class InterfaceConsts { public const int Declared = 1; public const int Public = 1; } } API-26 changes this: `Constructor` and `Method` no longer directly implement the `Member` interface. Instead, they inherit from `Executable`, which implements `Member`: // Java class Executable extends AccessibleObject implements Member { // ... } class Constructor extends Executable { // ... } Which results in the binding: // C# partial class Executable : AccessibleObject, IMember { public static class InterfaceConsts { public const int Declared = 1; public const int Public = 1; } } partial class Constructor : Executable { } *This* is the state of affairs for the "breaking change" in (2, 3): the `Constructor.InterfaceConsts` and `Method.InterfaceConsts` types are no longer generated. However, *these are not breaking changes*. The removal of e.g. `Constructor.InterfaceConsts` isn't an ABI break, as it isn't possible for IL to reference any `Constructor.InterfaceConsts` members: it's a static class with no methods, only `const` fields. Thus, the `const` value will be "inlined" at their usage sites, and there are no other members which can be referenced from IL under normal usage. Additionally, this isn't an API (source) break either: because the `InterfaceConsts` type was "moved" to a base class, existing source code with a C# expression of `Constructor.InterfaceConsts.Default` will continue to compile as expected, with unchanged semantics. We thus deem (2, 3) to be acceptable changes.
xamarin/xamarin-android-api-compatibility#5 has been merged. Please update this PR to use the appropriate That said, the macOS+xbuild PR Build is failing:
|
…ttServerCallback) from xamarin/xamarin-android-api-compatibility#5 (comment) (with a handful of fixes as the code just does not build)
d3f8957
to
b3098e7
Compare
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=30909 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=51293 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=55473 Bump to xamarin-android-api-compatibility/master/6fe9b17f. Add `Documentation/HowToAddNewApiLevel.md`, to describe the process for binding new API levels, including enumification. Enumify API-26. Update `build-tools/enumification-helpers` to support the latest droiddoc `packages.html` format. API-26 changed `Activity.findViewById(int)` to be a generic method. Remove the `<typeParameters/>` element and "fix" the return type so that we don't break API compatibility, as `generator` doesn't currently do anything sane here. (Specifically, all generic paramaters are currently bound as `Java.Lang.Object`, *even if* the type parameter has a constraint which provides a more specific type!) Fix binding of `Java.Nio.FileChannel` so it can be actually bound, related `SeekableByteChannel` support fixes. Remove `//implements[@name='AutoCloseable']` and `//implements[@name='Destryable']`, as they add Java `default` interface methods which can't be sanely supported at this time. Update `api-merge` to change `default` interface methods to non-`default` methods when merging with an older API level which contained the non-`default` interface method. This preserves backward compatibility with existing assemblies and source code. Remove the associated workarounds. Bump xamarin-android-api-compatibility to check against the latest-and-greatest API-26 binding.
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=30909 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=51293 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=55473 Bump to xamarin-android-api-compatibility/master/6fe9b17f. Add `Documentation/HowToAddNewApiLevel.md`, to describe the process for binding new API levels, including enumification. Enumify API-26. Update `build-tools/enumification-helpers` to support the latest droiddoc `packages.html` format. API-26 changed `Activity.findViewById(int)` to be a generic method. Remove the `<typeParameters/>` element and "fix" the return type so that we don't break API compatibility, as `generator` doesn't currently do anything sane here. (Specifically, all generic paramaters are currently bound as `Java.Lang.Object`, *even if* the type parameter has a constraint which provides a more specific type!) Fix binding of `Java.Nio.FileChannel` so it can be actually bound, related `SeekableByteChannel` support fixes. Remove `//implements[@name='AutoCloseable']` and `//implements[@name='Destryable']`, as they add Java `default` interface methods which can't be sanely supported at this time. Update `api-merge` to change `default` interface methods to non-`default` methods when merging with an older API level which contained the non-`default` interface method. This preserves backward compatibility with existing assemblies and source code. Remove the associated workarounds. Bump xamarin-android-api-compatibility to check against the latest-and-greatest API-26 binding.
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=30909 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=51293 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=55473 Bump to xamarin-android-api-compatibility/master/6fe9b17f. Add `Documentation/HowToAddNewApiLevel.md`, to describe the process for binding new API levels, including enumification. Enumify API-26. Update `build-tools/enumification-helpers` to support the latest droiddoc `packages.html` format. API-26 changed `Activity.findViewById(int)` to be a generic method. Remove the `<typeParameters/>` element and "fix" the return type so that we don't break API compatibility, as `generator` doesn't currently do anything sane here. (Specifically, all generic paramaters are currently bound as `Java.Lang.Object`, *even if* the type parameter has a constraint which provides a more specific type!) Fix binding of `Java.Nio.FileChannel` so it can be actually bound, related `SeekableByteChannel` support fixes. Remove `//implements[@name='AutoCloseable']` and `//implements[@name='Destryable']`, as they add Java `default` interface methods which can't be sanely supported at this time. Update `api-merge` to change `default` interface methods to non-`default` methods when merging with an older API level which contained the non-`default` interface method. This preserves backward compatibility with existing assemblies and source code. Remove the associated workarounds. Bump xamarin-android-api-compatibility to check against the latest-and-greatest API-26 binding.
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=30909 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=51293 Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=55473 Bump to xamarin-android-api-compatibility/master/6fe9b17f. Add `Documentation/HowToAddNewApiLevel.md`, to describe the process for binding new API levels, including enumification. Enumify API-26. Update `build-tools/enumification-helpers` to support the latest droiddoc `packages.html` format. API-26 changed `Activity.findViewById(int)` to be a generic method. Remove the `<typeParameters/>` element and "fix" the return type so that we don't break API compatibility, as `generator` doesn't currently do anything sane here. (Specifically, all generic paramaters are currently bound as `Java.Lang.Object`, *even if* the type parameter has a constraint which provides a more specific type!) Fix binding of `Java.Nio.FileChannel` so it can be actually bound, related `SeekableByteChannel` support fixes. Remove `//implements[@name='AutoCloseable']` and `//implements[@name='Destryable']`, as they add Java `default` interface methods which can't be sanely supported at this time. Update `api-merge` to change `default` interface methods to non-`default` methods when merging with an older API level which contained the non-`default` interface method. This preserves backward compatibility with existing assemblies and source code. Remove the associated workarounds. Bump xamarin-android-api-compatibility to check against the latest-and-greatest API-26 binding.
Changes: dotnet/java-interop@b00e644...1de5501 * dotnet/java-interop@1de5501: [CI] Add an "macOS .NET Core" build (dotnet#655) * dotnet/java-interop@9a56465: [generator] Use proper syntax for nested classes for DIM invokers (dotnet#662) * dotnet/java-interop@267c3f3: [generator] Support XML defined enums with no JNI info (dotnet#659) * dotnet/java-interop@5dcf896: [generator] Don't invalidate interface if static method is invalidated (dotnet#660) * dotnet/java-interop@1b59dcc: [java-interop] Update to SDK style project (dotnet#657) * dotnet/java-interop@b136ac9: [param-name-importer] Bump to Microsoft.Xml.SgmlReader 1.8.16 (dotnet#656) * dotnet/java-interop@eb39a3a: Bump to xamarin/xamarin-android-tools/master@3974fc38 (dotnet#658) * dotnet/java-interop@a99b451: [logcat-parse] Update to Mono.Terminal 5.4.0 (dotnet#654) * dotnet/java-interop@425f79d: [Java.Interop] Fix C# warnings (dotnet#652) * dotnet/java-interop@2e0f55d: [Java.Interop.Tools.Generator] Specify $(OutputPath) (dotnet#650) * dotnet/java-interop@4b266fa: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (dotnet#651)
Changes: dotnet/java-interop@76d1ac7...1f3388a * dotnet/java-interop@1f3388a: [generator] Use proper syntax for nested classes for DIM invokers (dotnet#662) * dotnet/java-interop@5e23163: [generator] Support XML defined enums with no JNI info (dotnet#659) * dotnet/java-interop@5c4581d: [generator] Don't invalidate interface if static method is invalidated (dotnet#660) * dotnet/java-interop@9687bb5: Bump to xamarin/xamarin-android-tools/d16-7@017078f2 (dotnet#658) * dotnet/java-interop@abfade5: [Java.Interop] Fix C# warnings (dotnet#652) * dotnet/java-interop@fb6d5f9: [Java.Interop.Tools.Generator] Specify $(OutputPath) (dotnet#650) * dotnet/java-interop@a3f148c: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (dotnet#651)
Changes: dotnet/java-interop@76d1ac7...1f3388a * dotnet/java-interop@1f3388a: [generator] Use proper syntax for nested classes for DIM invokers (dotnet#662) * dotnet/java-interop@5e23163: [generator] Support XML defined enums with no JNI info (dotnet#659) * dotnet/java-interop@5c4581d: [generator] Don't invalidate interface if static method is invalidated (dotnet#660) * dotnet/java-interop@9687bb5: Bump to xamarin/xamarin-android-tools/d16-7@017078f2 (dotnet#658) * dotnet/java-interop@abfade5: [Java.Interop] Fix C# warnings (dotnet#652) * dotnet/java-interop@fb6d5f9: [Java.Interop.Tools.Generator] Specify $(OutputPath) (dotnet#650) * dotnet/java-interop@a3f148c: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (dotnet#651)
Changes: dotnet/java-interop@b00e644...1de5501 * dotnet/java-interop@1de5501: [CI] Add an "macOS .NET Core" build (dotnet#655) * dotnet/java-interop@9a56465: [generator] Use proper syntax for nested classes for DIM invokers (dotnet#662) * dotnet/java-interop@267c3f3: [generator] Support XML defined enums with no JNI info (dotnet#659) * dotnet/java-interop@5dcf896: [generator] Don't invalidate interface if static method is invalidated (dotnet#660) * dotnet/java-interop@1b59dcc: [java-interop] Update to SDK style project (dotnet#657) * dotnet/java-interop@b136ac9: [param-name-importer] Bump to Microsoft.Xml.SgmlReader 1.8.16 (dotnet#656) * dotnet/java-interop@eb39a3a: Bump to xamarin/xamarin-android-tools/master@3974fc38 (dotnet#658) * dotnet/java-interop@a99b451: [logcat-parse] Update to Mono.Terminal 5.4.0 (dotnet#654) * dotnet/java-interop@425f79d: [Java.Interop] Fix C# warnings (dotnet#652) * dotnet/java-interop@2e0f55d: [Java.Interop.Tools.Generator] Specify $(OutputPath) (dotnet#650) * dotnet/java-interop@4b266fa: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (dotnet#651)
Changes: dotnet/java-interop@b00e644...1de5501 * dotnet/java-interop@1de5501: [CI] Add an "macOS .NET Core" build (dotnet#655) * dotnet/java-interop@9a56465: [generator] Use proper syntax for nested classes for DIM invokers (dotnet#662) * dotnet/java-interop@267c3f3: [generator] Support XML defined enums with no JNI info (dotnet#659) * dotnet/java-interop@5dcf896: [generator] Don't invalidate interface if static method is invalidated (dotnet#660) * dotnet/java-interop@1b59dcc: [java-interop] Update to SDK style project (dotnet#657) * dotnet/java-interop@b136ac9: [param-name-importer] Bump to Microsoft.Xml.SgmlReader 1.8.16 (dotnet#656) * dotnet/java-interop@eb39a3a: Bump to xamarin/xamarin-android-tools/master@3974fc38 (dotnet#658) * dotnet/java-interop@a99b451: [logcat-parse] Update to Mono.Terminal 5.4.0 (dotnet#654) * dotnet/java-interop@425f79d: [Java.Interop] Fix C# warnings (dotnet#652) * dotnet/java-interop@2e0f55d: [Java.Interop.Tools.Generator] Specify $(OutputPath) (dotnet#650) * dotnet/java-interop@4b266fa: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (dotnet#651)
Changes: dotnet/java-interop@76d1ac7...1f3388a * dotnet/java-interop@1f3388a: [generator] Use proper syntax for nested classes for DIM invokers (#662) * dotnet/java-interop@5e23163: [generator] Support XML defined enums with no JNI info (#659) * dotnet/java-interop@5c4581d: [generator] Don't invalidate interface if static method is invalidated (#660) * dotnet/java-interop@9687bb5: Bump to xamarin/xamarin-android-tools/d16-7@017078f2 (#658) * dotnet/java-interop@abfade5: [Java.Interop] Fix C# warnings (#652) * dotnet/java-interop@fb6d5f9: [Java.Interop.Tools.Generator] Specify $(OutputPath) (#650) * dotnet/java-interop@a3f148c: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (#651)
Changes: dotnet/java-interop@b00e644...1de5501 * dotnet/java-interop@1de5501: [CI] Add an "macOS .NET Core" build (#655) * dotnet/java-interop@9a56465: [generator] Use proper syntax for nested classes for DIM invokers (#662) * dotnet/java-interop@267c3f3: [generator] Support XML defined enums with no JNI info (#659) * dotnet/java-interop@5dcf896: [generator] Don't invalidate interface if static method is invalidated (#660) * dotnet/java-interop@1b59dcc: [java-interop] Update to SDK style project (#657) * dotnet/java-interop@b136ac9: [param-name-importer] Bump to Microsoft.Xml.SgmlReader 1.8.16 (#656) * dotnet/java-interop@eb39a3a: Bump to xamarin/xamarin-android-tools/master@3974fc38 (#658) * dotnet/java-interop@a99b451: [logcat-parse] Update to Mono.Terminal 5.4.0 (#654) * dotnet/java-interop@425f79d: [Java.Interop] Fix C# warnings (#652) * dotnet/java-interop@2e0f55d: [Java.Interop.Tools.Generator] Specify $(OutputPath) (#650) * dotnet/java-interop@4b266fa: [Xamarin.Android.Tools.Bytecode] Support @jvmoverloads (#651)
No description provided.